Computers, both those used in the home and those used by businesses, find much of their utility based in the software that is executed upon those computers. In many cases, the first experience that a computer user or system administrator has with software is during the process of installing the software on a computer. It is often said that the first impression is the most important and this holds true as much in a software context as in any other.
Since installation is often the first encounter a customer has with a product, any negative experience can be detrimental to the quality associated with that product by the customer. For example, if a customer is evaluating software and cannot get the product installed, it is likely that the customer will not purchase the software later. Such installation problems may often go undetected by those responsible for creating installation methods for software (e.g., software engineers) because there has been no reliable method for providing information as to such failures. In the past, often sales or technical support has had to relay customer experiential information rather than hard data related to an installation failure.
Another issue presented to customers experiencing software installation failure has been an inability for the customer to automatically receive help, either in the form of a fix for the problem or links to advice for solving the problem. It is therefore desirable to have a mechanism by which data related to a software installation failure is provided to members of the entity distributing the software, as well as a mechanism for automatically providing a solution or at least information related to the problem automatically to the customer.
Similarly, if a customer experiences errors in other transaction based applications, such as with backup jobs or programs having submitted requests that are then processed, if a failure occurs during processing often the problem goes unresolved or inadequately resolved and the reputation of the software suffers. It is therefore desirable to have a mechanism by which errors in transaction-based processes are reported to members of the entity distributing the software, as well as a mechanism for automatically providing a solution or information related to the problem to the customer.